430 IF C=1 THEN BX=CX1 \ 13 : BY=CY1 \ 7 ELSE BX=CX2 \ 13 : BY=CY2 \ 7
440 IF BY<13 THEN BP=BP(BX,BY) : IF BP>0 THEN A=SGN(A)*BP :B=SGN(B)*BP: LINE(BX*13,BY*7)-(BX*13+11,BY*7+5),PSET,[0,0,0],BF:PLAY"@76v13o4a" : BL=BL-1 : LOCATE 65,8 : PRINT BL : IF BL<1 THEN 710
450 AA=A*(C MOD 2=1) : BB=B*(C>1) : TX=TX+AA : TY=TY+BB
460 IF AA=-A THEN A=-A ELSE IF BB=-B THEN B=-B
470 PLAY,"v13@77o4a" : C=0 : RETURN
480 '
490 BL=0 : FOR J=0 TO 12 : FOR I=0 TO 16 : X=I*13 : Y=J*7 : BP=BP(I,J) : BP(I,J)=BP(I,J)*SPEED
500 IF BP>0 THEN A=255*BP*.1! : LINE(X,Y)-(X+11,Y+5),PSET,[INT(A),INT(A),INT(A)],BF : BL=BL+1
510 NEXT : NEXT
520 RETURN
530 '
540 IF ERR=63 THEN RESUME 23
542 TX=INT(TX) : TY=INT(TY) : RESUME 330
550 '
560 IF HJMT=0 THEN PUT@A(TX-A,TY-B)-(TX+6-A,TY+6-B),KS% ELSE HJMT=0